// Package backend defines the result backend interface for GoCelery
package backend

// Backend is the interface for task result storage
type Backend interface {
	// Initialize the result backend
	Initialize(url string) error

	// Close the backend connection
	Close() error

	// Store a task result
	SetResult(taskID string, result []byte) error

	// Retrieve a task result
	GetResult(taskID string) ([]byte, error)

	// Check if a result exists
	HasResult(taskID string) (bool, error)

	// Remove a result
	DeleteResult(taskID string) error
}
